]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
extensions-app: Use AdwPreferencesPage and AdwPreferencesGroup
authorRomain Vigier <romain@romainvigier.fr>
Mon, 18 Oct 2021 13:18:11 +0000 (15:18 +0200)
committerFlorian Müllner <fmuellner@gnome.org>
Wed, 5 Jan 2022 14:50:47 +0000 (15:50 +0100)
Give consistent styling and sizing to extensions lists.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1997>

subprojects/extensions-app/data/ui/extension-row.ui
subprojects/extensions-app/data/ui/extensions-window.ui
subprojects/extensions-app/js/main.js

index f41d8fbb7ee520271db5747428fcffc33877117c..8330f05ce20c9c857989e1ce9e85b115eb302ce3 100644 (file)
@@ -89,7 +89,6 @@
                 <child>
                   <object class="GtkLabel" id="descriptionLabel">
                     <property name="ellipsize">end</property>
-                    <property name="max-width-chars">60</property>
                     <property name="xalign">0</property>
                     <property name="yalign">0</property>
                   </object>
                     <property name="visible">False</property>
                     <property name="selectable">True</property>
                     <property name="wrap">True</property>
-                    <property name="max-width-chars">60</property>
                     <property name="xalign">0</property>
                     <layout>
                       <property name="column">1</property>
index f96441c4885fe64b89bc23de7a63aee819c19588..740c62128e93703434593a0bf804dfca3ea0bcd7 100644 (file)
               <object class="GtkStackPage">
                 <property name="name">main</property>
                 <property name="child">
-                  <object class="GtkScrolledWindow" id="scrolledWindow">
-                    <property name="hscrollbar-policy">never</property>
+                  <object class="AdwPreferencesPage">
                     <child>
-                      <object class="GtkViewport">
-                        <property name="scroll-to-focus">True</property>
+                      <object class="AdwPreferencesGroup" id="userGroup">
+                        <property name="title" translatable="yes">Manually Installed</property>
                         <child>
-                          <object class="GtkBox">
-                            <property name="orientation">vertical</property>
-                            <property name="halign">center</property>
-                            <property name="margin-start">36</property>
-                            <property name="margin-end">36</property>
-                            <property name="margin-top">36</property>
-                            <property name="margin-bottom">36</property>
-                            <property name="spacing">12</property>
-                            <child>
-                              <object class="GtkLabel">
-                                <property name="visible"
-                                          bind-source="userList"
-                                          bind-property="visible"
-                                          bind-flags="sync-create"/>
-                                <property name="halign">start</property>
-                                <property name="hexpand">True</property>
-                                <property name="label" translatable="yes">Manually Installed</property>
-                                <style>
-                                  <class name="heading"/>
-                                </style>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkListBox" id="userList">
-                                <property name="selection-mode">none</property>
-                                <property name="margin-bottom">24</property>
-                                <style>
-                                  <class name="content"/>
-                                </style>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkLabel">
-                                <property name="visible"
-                                          bind-source="systemList"
-                                          bind-property="visible"
-                                          bind-flags="sync-create"/>
-                                <property name="halign">start</property>
-                                <property name="hexpand">True</property>
-                                <property name="label" translatable="yes">Built-In</property>
-                                <style>
-                                  <class name="heading"/>
-                                </style>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkListBox" id="systemList">
-                                <property name="selection-mode">none</property>
-                                <style>
-                                  <class name="content"/>
-                                </style>
-                              </object>
-                            </child>
+                          <object class="GtkListBox" id="userList">
+                            <property name="selection-mode">none</property>
+                            <style>
+                              <class name="content"/>
+                            </style>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="AdwPreferencesGroup" id="systemGroup">
+                        <property name="title" translatable="yes">Built-In</property>
+                        <child>
+                          <object class="GtkListBox" id="systemList">
+                            <property name="selection-mode">none</property>
+                            <style>
+                              <class name="content"/>
+                            </style>
                           </object>
                         </child>
                       </object>
index 563cd7e456a95e5bbfa82ebb2db98e73e9791069..329d3870dd6079238fdc64a314a5b1436ae59ca8 100644 (file)
@@ -74,10 +74,11 @@ var ExtensionsWindow = GObject.registerClass({
     GTypeName: 'ExtensionsWindow',
     Template: 'resource:///org/gnome/Extensions/ui/extensions-window.ui',
     InternalChildren: [
+        'userGroup',
         'userList',
+        'systemGroup',
         'systemList',
         'mainStack',
-        'scrolledWindow',
         'searchBar',
         'searchButton',
         'searchEntry',
@@ -316,10 +317,10 @@ var ExtensionsWindow = GObject.registerClass({
     }
 
     _syncListVisibility() {
-        this._userList.visible = [...this._userList].length > 1;
-        this._systemList.visible = [...this._systemList].length > 1;
+        this._userGroup.visible = [...this._userList].length > 1;
+        this._systemGroup.visible = [...this._systemList].length > 1;
 
-        if (this._userList.visible || this._systemList.visible)
+        if (this._userGroup.visible || this._systemGroup.visible)
             this._mainStack.visible_child_name = 'main';
         else
             this._mainStack.visible_child_name = 'placeholder';